﻿using System;
using System.ComponentModel;
using System.Runtime.InteropServices;
using Teigha.Core;

namespace Teigha.TD
{
	public class OdDbSubentIdArraySt : IDisposable
	{
		[EditorBrowsable(EditorBrowsableState.Never)]
		public OdDbSubentIdArraySt(IntPtr cPtr, bool cMemoryOwn)
		{
			this.swigCMemOwn = cMemoryOwn;
			this.swigCPtr = new HandleRef(this, cPtr);
		}

		[EditorBrowsable(EditorBrowsableState.Never)]
		public static HandleRef getCPtr(OdDbSubentIdArraySt obj)
		{
			if (obj != null)
			{
				return obj.swigCPtr;
			}
			return new HandleRef(null, IntPtr.Zero);
		}

		~OdDbSubentIdArraySt()
		{
			this.Dispose();
		}

		public virtual void Dispose()
		{
			if (this.swigCPtr.Handle != IntPtr.Zero)
			{
				if (this.swigCMemOwn)
				{
					lock (this.locker)
					{
						if (this.swigCPtr.Handle != IntPtr.Zero && this.swigCMemOwn)
						{
							this.swigCMemOwn = false;
							TD_DbPINVOKE.delete_OdDbSubentIdArraySt(this.swigCPtr);
						}
					}
					this.swigCMemOwn = false;
				}
				this.swigCPtr = new HandleRef(null, IntPtr.Zero);
			}
			GC.SuppressFinalize(this);
		}

		public OdDbSubentId begin()
		{
			IntPtr intPtr = TD_DbPINVOKE.OdDbSubentIdArraySt_begin__SWIG_0(this.swigCPtr);
			OdDbSubentId result = (intPtr == IntPtr.Zero) ? null : new OdDbSubentId(intPtr, false);
			if (TD_DbPINVOKE.SWIGPendingException.Pending)
			{
				throw TD_DbPINVOKE.SWIGPendingException.Retrieve();
			}
			return result;
		}

		public OdDbSubentId end()
		{
			IntPtr intPtr = TD_DbPINVOKE.OdDbSubentIdArraySt_end__SWIG_0(this.swigCPtr);
			OdDbSubentId result = (intPtr == IntPtr.Zero) ? null : new OdDbSubentId(intPtr, false);
			if (TD_DbPINVOKE.SWIGPendingException.Pending)
			{
				throw TD_DbPINVOKE.SWIGPendingException.Retrieve();
			}
			return result;
		}

		public void insert(OdDbSubentId before, OdDbSubentId first, OdDbSubentId afterLast)
		{
			TD_DbPINVOKE.OdDbSubentIdArraySt_insert__SWIG_0(this.swigCPtr, OdDbSubentId.getCPtr(before), OdDbSubentId.getCPtr(first), OdDbSubentId.getCPtr(afterLast));
			if (TD_DbPINVOKE.SWIGPendingException.Pending)
			{
				throw TD_DbPINVOKE.SWIGPendingException.Retrieve();
			}
		}

		public void resize(SWIGTYPE_p_OdObjectsAllocatorT_OdDbSubentId_t__size_type logicalLength, OdDbSubentId value)
		{
			TD_DbPINVOKE.OdDbSubentIdArraySt_resize__SWIG_0(this.swigCPtr, SWIGTYPE_p_OdObjectsAllocatorT_OdDbSubentId_t__size_type.getCPtr(logicalLength), OdDbSubentId.getCPtr(value));
			if (TD_DbPINVOKE.SWIGPendingException.Pending)
			{
				throw TD_DbPINVOKE.SWIGPendingException.Retrieve();
			}
		}

		public void resize(SWIGTYPE_p_OdObjectsAllocatorT_OdDbSubentId_t__size_type logicalLength)
		{
			TD_DbPINVOKE.OdDbSubentIdArraySt_resize__SWIG_1(this.swigCPtr, SWIGTYPE_p_OdObjectsAllocatorT_OdDbSubentId_t__size_type.getCPtr(logicalLength));
			if (TD_DbPINVOKE.SWIGPendingException.Pending)
			{
				throw TD_DbPINVOKE.SWIGPendingException.Retrieve();
			}
		}

		private SWIGTYPE_p_OdObjectsAllocatorT_OdDbSubentId_t__size_type size()
		{
			SWIGTYPE_p_OdObjectsAllocatorT_OdDbSubentId_t__size_type result = new SWIGTYPE_p_OdObjectsAllocatorT_OdDbSubentId_t__size_type(TD_DbPINVOKE.OdDbSubentIdArraySt_size(this.swigCPtr), true);
			if (TD_DbPINVOKE.SWIGPendingException.Pending)
			{
				throw TD_DbPINVOKE.SWIGPendingException.Retrieve();
			}
			return result;
		}

		public bool empty()
		{
			bool result = TD_DbPINVOKE.OdDbSubentIdArraySt_empty(this.swigCPtr);
			if (TD_DbPINVOKE.SWIGPendingException.Pending)
			{
				throw TD_DbPINVOKE.SWIGPendingException.Retrieve();
			}
			return result;
		}

		private SWIGTYPE_p_OdObjectsAllocatorT_OdDbSubentId_t__size_type capacity()
		{
			SWIGTYPE_p_OdObjectsAllocatorT_OdDbSubentId_t__size_type result = new SWIGTYPE_p_OdObjectsAllocatorT_OdDbSubentId_t__size_type(TD_DbPINVOKE.OdDbSubentIdArraySt_capacity(this.swigCPtr), true);
			if (TD_DbPINVOKE.SWIGPendingException.Pending)
			{
				throw TD_DbPINVOKE.SWIGPendingException.Retrieve();
			}
			return result;
		}

		private void reserve(SWIGTYPE_p_OdObjectsAllocatorT_OdDbSubentId_t__size_type reserveLength)
		{
			TD_DbPINVOKE.OdDbSubentIdArraySt_reserve(this.swigCPtr, SWIGTYPE_p_OdObjectsAllocatorT_OdDbSubentId_t__size_type.getCPtr(reserveLength));
			if (TD_DbPINVOKE.SWIGPendingException.Pending)
			{
				throw TD_DbPINVOKE.SWIGPendingException.Retrieve();
			}
		}

		public void assign(OdDbSubentId first, OdDbSubentId afterLast)
		{
			TD_DbPINVOKE.OdDbSubentIdArraySt_assign(this.swigCPtr, OdDbSubentId.getCPtr(first), OdDbSubentId.getCPtr(afterLast));
			if (TD_DbPINVOKE.SWIGPendingException.Pending)
			{
				throw TD_DbPINVOKE.SWIGPendingException.Retrieve();
			}
		}

		public OdDbSubentId erase(OdDbSubentId first, OdDbSubentId afterLast)
		{
			IntPtr intPtr = TD_DbPINVOKE.OdDbSubentIdArraySt_erase__SWIG_0(this.swigCPtr, OdDbSubentId.getCPtr(first), OdDbSubentId.getCPtr(afterLast));
			OdDbSubentId result = (intPtr == IntPtr.Zero) ? null : new OdDbSubentId(intPtr, false);
			if (TD_DbPINVOKE.SWIGPendingException.Pending)
			{
				throw TD_DbPINVOKE.SWIGPendingException.Retrieve();
			}
			return result;
		}

		public OdDbSubentId erase(OdDbSubentId where)
		{
			IntPtr intPtr = TD_DbPINVOKE.OdDbSubentIdArraySt_erase__SWIG_1(this.swigCPtr, OdDbSubentId.getCPtr(where));
			OdDbSubentId result = (intPtr == IntPtr.Zero) ? null : new OdDbSubentId(intPtr, false);
			if (TD_DbPINVOKE.SWIGPendingException.Pending)
			{
				throw TD_DbPINVOKE.SWIGPendingException.Retrieve();
			}
			return result;
		}

		public void clear()
		{
			TD_DbPINVOKE.OdDbSubentIdArraySt_clear(this.swigCPtr);
			if (TD_DbPINVOKE.SWIGPendingException.Pending)
			{
				throw TD_DbPINVOKE.SWIGPendingException.Retrieve();
			}
		}

		public void push_back(OdDbSubentId value)
		{
			TD_DbPINVOKE.OdDbSubentIdArraySt_push_back(this.swigCPtr, OdDbSubentId.getCPtr(value));
			if (TD_DbPINVOKE.SWIGPendingException.Pending)
			{
				throw TD_DbPINVOKE.SWIGPendingException.Retrieve();
			}
		}

		public OdDbSubentId insert(OdDbSubentId before, SWIGTYPE_p_OdObjectsAllocatorT_OdDbSubentId_t__size_type numElements, OdDbSubentId value)
		{
			IntPtr intPtr = TD_DbPINVOKE.OdDbSubentIdArraySt_insert__SWIG_1(this.swigCPtr, OdDbSubentId.getCPtr(before), SWIGTYPE_p_OdObjectsAllocatorT_OdDbSubentId_t__size_type.getCPtr(numElements), OdDbSubentId.getCPtr(value));
			OdDbSubentId result = (intPtr == IntPtr.Zero) ? null : new OdDbSubentId(intPtr, false);
			if (TD_DbPINVOKE.SWIGPendingException.Pending)
			{
				throw TD_DbPINVOKE.SWIGPendingException.Retrieve();
			}
			return result;
		}

		public OdDbSubentId insert(OdDbSubentId before, OdDbSubentId value)
		{
			IntPtr intPtr = TD_DbPINVOKE.OdDbSubentIdArraySt_insert__SWIG_2(this.swigCPtr, OdDbSubentId.getCPtr(before), OdDbSubentId.getCPtr(value));
			OdDbSubentId result = (intPtr == IntPtr.Zero) ? null : new OdDbSubentId(intPtr, false);
			if (TD_DbPINVOKE.SWIGPendingException.Pending)
			{
				throw TD_DbPINVOKE.SWIGPendingException.Retrieve();
			}
			return result;
		}

		public OdDbSubentId insert(OdDbSubentId before)
		{
			IntPtr intPtr = TD_DbPINVOKE.OdDbSubentIdArraySt_insert__SWIG_3(this.swigCPtr, OdDbSubentId.getCPtr(before));
			OdDbSubentId result = (intPtr == IntPtr.Zero) ? null : new OdDbSubentId(intPtr, false);
			if (TD_DbPINVOKE.SWIGPendingException.Pending)
			{
				throw TD_DbPINVOKE.SWIGPendingException.Retrieve();
			}
			return result;
		}

		public bool contains(OdDbSubentId value, SWIGTYPE_p_OdObjectsAllocatorT_OdDbSubentId_t__size_type start)
		{
			bool result = TD_DbPINVOKE.OdDbSubentIdArraySt_contains__SWIG_0(this.swigCPtr, OdDbSubentId.getCPtr(value), SWIGTYPE_p_OdObjectsAllocatorT_OdDbSubentId_t__size_type.getCPtr(start));
			if (TD_DbPINVOKE.SWIGPendingException.Pending)
			{
				throw TD_DbPINVOKE.SWIGPendingException.Retrieve();
			}
			return result;
		}

		public bool contains(OdDbSubentId value)
		{
			bool result = TD_DbPINVOKE.OdDbSubentIdArraySt_contains__SWIG_1(this.swigCPtr, OdDbSubentId.getCPtr(value));
			if (TD_DbPINVOKE.SWIGPendingException.Pending)
			{
				throw TD_DbPINVOKE.SWIGPendingException.Retrieve();
			}
			return result;
		}

		public SWIGTYPE_p_OdObjectsAllocatorT_OdDbSubentId_t__size_type length()
		{
			SWIGTYPE_p_OdObjectsAllocatorT_OdDbSubentId_t__size_type result = new SWIGTYPE_p_OdObjectsAllocatorT_OdDbSubentId_t__size_type(TD_DbPINVOKE.OdDbSubentIdArraySt_length(this.swigCPtr), true);
			if (TD_DbPINVOKE.SWIGPendingException.Pending)
			{
				throw TD_DbPINVOKE.SWIGPendingException.Retrieve();
			}
			return result;
		}

		public bool isEmpty()
		{
			bool result = TD_DbPINVOKE.OdDbSubentIdArraySt_isEmpty(this.swigCPtr);
			if (TD_DbPINVOKE.SWIGPendingException.Pending)
			{
				throw TD_DbPINVOKE.SWIGPendingException.Retrieve();
			}
			return result;
		}

		public SWIGTYPE_p_OdObjectsAllocatorT_OdDbSubentId_t__size_type logicalLength()
		{
			SWIGTYPE_p_OdObjectsAllocatorT_OdDbSubentId_t__size_type result = new SWIGTYPE_p_OdObjectsAllocatorT_OdDbSubentId_t__size_type(TD_DbPINVOKE.OdDbSubentIdArraySt_logicalLength(this.swigCPtr), true);
			if (TD_DbPINVOKE.SWIGPendingException.Pending)
			{
				throw TD_DbPINVOKE.SWIGPendingException.Retrieve();
			}
			return result;
		}

		public SWIGTYPE_p_OdObjectsAllocatorT_OdDbSubentId_t__size_type physicalLength()
		{
			SWIGTYPE_p_OdObjectsAllocatorT_OdDbSubentId_t__size_type result = new SWIGTYPE_p_OdObjectsAllocatorT_OdDbSubentId_t__size_type(TD_DbPINVOKE.OdDbSubentIdArraySt_physicalLength(this.swigCPtr), true);
			if (TD_DbPINVOKE.SWIGPendingException.Pending)
			{
				throw TD_DbPINVOKE.SWIGPendingException.Retrieve();
			}
			return result;
		}

		public int growLength()
		{
			int result = TD_DbPINVOKE.OdDbSubentIdArraySt_growLength(this.swigCPtr);
			if (TD_DbPINVOKE.SWIGPendingException.Pending)
			{
				throw TD_DbPINVOKE.SWIGPendingException.Retrieve();
			}
			return result;
		}

		public OdDbSubentId asArrayPtr()
		{
			IntPtr intPtr = TD_DbPINVOKE.OdDbSubentIdArraySt_asArrayPtr__SWIG_0(this.swigCPtr);
			OdDbSubentId result = (intPtr == IntPtr.Zero) ? null : new OdDbSubentId(intPtr, false);
			if (TD_DbPINVOKE.SWIGPendingException.Pending)
			{
				throw TD_DbPINVOKE.SWIGPendingException.Retrieve();
			}
			return result;
		}

		public OdDbSubentId getPtr()
		{
			IntPtr intPtr = TD_DbPINVOKE.OdDbSubentIdArraySt_getPtr(this.swigCPtr);
			OdDbSubentId result = (intPtr == IntPtr.Zero) ? null : new OdDbSubentId(intPtr, false);
			if (TD_DbPINVOKE.SWIGPendingException.Pending)
			{
				throw TD_DbPINVOKE.SWIGPendingException.Retrieve();
			}
			return result;
		}

		public OdDbSubentId GetItem(SWIGTYPE_p_OdObjectsAllocatorT_OdDbSubentId_t__size_type index)
		{
			OdDbSubentId result = new OdDbSubentId(TD_DbPINVOKE.OdDbSubentIdArraySt_GetItem__SWIG_0(this.swigCPtr, SWIGTYPE_p_OdObjectsAllocatorT_OdDbSubentId_t__size_type.getCPtr(index)), false);
			if (TD_DbPINVOKE.SWIGPendingException.Pending)
			{
				throw TD_DbPINVOKE.SWIGPendingException.Retrieve();
			}
			return result;
		}

		public OdDbSubentId at(SWIGTYPE_p_OdObjectsAllocatorT_OdDbSubentId_t__size_type arrayIndex)
		{
			OdDbSubentId result = new OdDbSubentId(TD_DbPINVOKE.OdDbSubentIdArraySt_at__SWIG_0(this.swigCPtr, SWIGTYPE_p_OdObjectsAllocatorT_OdDbSubentId_t__size_type.getCPtr(arrayIndex)), false);
			if (TD_DbPINVOKE.SWIGPendingException.Pending)
			{
				throw TD_DbPINVOKE.SWIGPendingException.Retrieve();
			}
			return result;
		}

		public OdDbSubentIdArraySt setAt(SWIGTYPE_p_OdObjectsAllocatorT_OdDbSubentId_t__size_type arrayIndex, OdDbSubentId value)
		{
			OdDbSubentIdArraySt result = new OdDbSubentIdArraySt(TD_DbPINVOKE.OdDbSubentIdArraySt_setAt(this.swigCPtr, SWIGTYPE_p_OdObjectsAllocatorT_OdDbSubentId_t__size_type.getCPtr(arrayIndex), OdDbSubentId.getCPtr(value)), false);
			if (TD_DbPINVOKE.SWIGPendingException.Pending)
			{
				throw TD_DbPINVOKE.SWIGPendingException.Retrieve();
			}
			return result;
		}

		public OdDbSubentId getAt(SWIGTYPE_p_OdObjectsAllocatorT_OdDbSubentId_t__size_type arrayIndex)
		{
			OdDbSubentId result = new OdDbSubentId(TD_DbPINVOKE.OdDbSubentIdArraySt_getAt(this.swigCPtr, SWIGTYPE_p_OdObjectsAllocatorT_OdDbSubentId_t__size_type.getCPtr(arrayIndex)), false);
			if (TD_DbPINVOKE.SWIGPendingException.Pending)
			{
				throw TD_DbPINVOKE.SWIGPendingException.Retrieve();
			}
			return result;
		}

		public OdDbSubentId first()
		{
			OdDbSubentId result = new OdDbSubentId(TD_DbPINVOKE.OdDbSubentIdArraySt_first__SWIG_0(this.swigCPtr), false);
			if (TD_DbPINVOKE.SWIGPendingException.Pending)
			{
				throw TD_DbPINVOKE.SWIGPendingException.Retrieve();
			}
			return result;
		}

		public OdDbSubentId last()
		{
			OdDbSubentId result = new OdDbSubentId(TD_DbPINVOKE.OdDbSubentIdArraySt_last__SWIG_0(this.swigCPtr), false);
			if (TD_DbPINVOKE.SWIGPendingException.Pending)
			{
				throw TD_DbPINVOKE.SWIGPendingException.Retrieve();
			}
			return result;
		}

		public SWIGTYPE_p_OdObjectsAllocatorT_OdDbSubentId_t__size_type append(OdDbSubentId value)
		{
			SWIGTYPE_p_OdObjectsAllocatorT_OdDbSubentId_t__size_type result = new SWIGTYPE_p_OdObjectsAllocatorT_OdDbSubentId_t__size_type(TD_DbPINVOKE.OdDbSubentIdArraySt_append__SWIG_0(this.swigCPtr, OdDbSubentId.getCPtr(value)), true);
			if (TD_DbPINVOKE.SWIGPendingException.Pending)
			{
				throw TD_DbPINVOKE.SWIGPendingException.Retrieve();
			}
			return result;
		}

		public OdDbSubentId append()
		{
			IntPtr intPtr = TD_DbPINVOKE.OdDbSubentIdArraySt_append__SWIG_1(this.swigCPtr);
			OdDbSubentId result = (intPtr == IntPtr.Zero) ? null : new OdDbSubentId(intPtr, false);
			if (TD_DbPINVOKE.SWIGPendingException.Pending)
			{
				throw TD_DbPINVOKE.SWIGPendingException.Retrieve();
			}
			return result;
		}

		public OdDbSubentIdArraySt removeFirst()
		{
			OdDbSubentIdArraySt result = new OdDbSubentIdArraySt(TD_DbPINVOKE.OdDbSubentIdArraySt_removeFirst(this.swigCPtr), false);
			if (TD_DbPINVOKE.SWIGPendingException.Pending)
			{
				throw TD_DbPINVOKE.SWIGPendingException.Retrieve();
			}
			return result;
		}

		public OdDbSubentIdArraySt removeLast()
		{
			OdDbSubentIdArraySt result = new OdDbSubentIdArraySt(TD_DbPINVOKE.OdDbSubentIdArraySt_removeLast(this.swigCPtr), false);
			if (TD_DbPINVOKE.SWIGPendingException.Pending)
			{
				throw TD_DbPINVOKE.SWIGPendingException.Retrieve();
			}
			return result;
		}

		public OdDbSubentIdArraySt setGrowLength(int growLength)
		{
			OdDbSubentIdArraySt result = new OdDbSubentIdArraySt(TD_DbPINVOKE.OdDbSubentIdArraySt_setGrowLength(this.swigCPtr, growLength), false);
			if (TD_DbPINVOKE.SWIGPendingException.Pending)
			{
				throw TD_DbPINVOKE.SWIGPendingException.Retrieve();
			}
			return result;
		}

		public OdDbSubentIdArraySt(SWIGTYPE_p_OdObjectsAllocatorT_OdDbSubentId_t__size_type physicalLength, int growLength) : this(TD_DbPINVOKE.new_OdDbSubentIdArraySt__SWIG_0(SWIGTYPE_p_OdObjectsAllocatorT_OdDbSubentId_t__size_type.getCPtr(physicalLength), growLength), true)
		{
			if (TD_DbPINVOKE.SWIGPendingException.Pending)
			{
				throw TD_DbPINVOKE.SWIGPendingException.Retrieve();
			}
		}

		public OdDbSubentIdArraySt(SWIGTYPE_p_OdObjectsAllocatorT_OdDbSubentId_t__size_type physicalLength) : this(TD_DbPINVOKE.new_OdDbSubentIdArraySt__SWIG_1(SWIGTYPE_p_OdObjectsAllocatorT_OdDbSubentId_t__size_type.getCPtr(physicalLength)), true)
		{
			if (TD_DbPINVOKE.SWIGPendingException.Pending)
			{
				throw TD_DbPINVOKE.SWIGPendingException.Retrieve();
			}
		}

		public OdDbSubentIdArraySt() : this(TD_DbPINVOKE.new_OdDbSubentIdArraySt__SWIG_2(), true)
		{
			if (TD_DbPINVOKE.SWIGPendingException.Pending)
			{
				throw TD_DbPINVOKE.SWIGPendingException.Retrieve();
			}
		}

		public OdDbSubentIdArraySt(OdDbSubentIdArraySt source) : this(TD_DbPINVOKE.new_OdDbSubentIdArraySt__SWIG_3(OdDbSubentIdArraySt.getCPtr(source)), true)
		{
			if (TD_DbPINVOKE.SWIGPendingException.Pending)
			{
				throw TD_DbPINVOKE.SWIGPendingException.Retrieve();
			}
		}

		public OdDbSubentIdArraySt Assign(OdDbSubentIdArraySt source)
		{
			OdDbSubentIdArraySt result = new OdDbSubentIdArraySt(TD_DbPINVOKE.OdDbSubentIdArraySt_Assign(this.swigCPtr, OdDbSubentIdArraySt.getCPtr(source)), false);
			if (TD_DbPINVOKE.SWIGPendingException.Pending)
			{
				throw TD_DbPINVOKE.SWIGPendingException.Retrieve();
			}
			return result;
		}

		public bool IsEqual(OdDbSubentIdArraySt array)
		{
			bool result = TD_DbPINVOKE.OdDbSubentIdArraySt_IsEqual(this.swigCPtr, OdDbSubentIdArraySt.getCPtr(array));
			if (TD_DbPINVOKE.SWIGPendingException.Pending)
			{
				throw TD_DbPINVOKE.SWIGPendingException.Retrieve();
			}
			return result;
		}

		public OdDbSubentIdArraySt setAll(OdDbSubentId value)
		{
			OdDbSubentIdArraySt result = new OdDbSubentIdArraySt(TD_DbPINVOKE.OdDbSubentIdArraySt_setAll(this.swigCPtr, OdDbSubentId.getCPtr(value)), false);
			if (TD_DbPINVOKE.SWIGPendingException.Pending)
			{
				throw TD_DbPINVOKE.SWIGPendingException.Retrieve();
			}
			return result;
		}

		public OdDbSubentIdArraySt append(OdDbSubentIdArraySt otherArray)
		{
			OdDbSubentIdArraySt result = new OdDbSubentIdArraySt(TD_DbPINVOKE.OdDbSubentIdArraySt_append__SWIG_2(this.swigCPtr, OdDbSubentIdArraySt.getCPtr(otherArray)), false);
			if (TD_DbPINVOKE.SWIGPendingException.Pending)
			{
				throw TD_DbPINVOKE.SWIGPendingException.Retrieve();
			}
			return result;
		}

		public OdDbSubentIdArraySt insertAt(SWIGTYPE_p_OdObjectsAllocatorT_OdDbSubentId_t__size_type arrayIndex, OdDbSubentId value)
		{
			OdDbSubentIdArraySt result = new OdDbSubentIdArraySt(TD_DbPINVOKE.OdDbSubentIdArraySt_insertAt(this.swigCPtr, SWIGTYPE_p_OdObjectsAllocatorT_OdDbSubentId_t__size_type.getCPtr(arrayIndex), OdDbSubentId.getCPtr(value)), false);
			if (TD_DbPINVOKE.SWIGPendingException.Pending)
			{
				throw TD_DbPINVOKE.SWIGPendingException.Retrieve();
			}
			return result;
		}

		public OdDbSubentIdArraySt removeAt(SWIGTYPE_p_OdObjectsAllocatorT_OdDbSubentId_t__size_type arrayIndex)
		{
			OdDbSubentIdArraySt result = new OdDbSubentIdArraySt(TD_DbPINVOKE.OdDbSubentIdArraySt_removeAt(this.swigCPtr, SWIGTYPE_p_OdObjectsAllocatorT_OdDbSubentId_t__size_type.getCPtr(arrayIndex)), false);
			if (TD_DbPINVOKE.SWIGPendingException.Pending)
			{
				throw TD_DbPINVOKE.SWIGPendingException.Retrieve();
			}
			return result;
		}

		public OdDbSubentIdArraySt removeSubArray(SWIGTYPE_p_OdObjectsAllocatorT_OdDbSubentId_t__size_type startIndex, SWIGTYPE_p_OdObjectsAllocatorT_OdDbSubentId_t__size_type endIndex)
		{
			OdDbSubentIdArraySt result = new OdDbSubentIdArraySt(TD_DbPINVOKE.OdDbSubentIdArraySt_removeSubArray(this.swigCPtr, SWIGTYPE_p_OdObjectsAllocatorT_OdDbSubentId_t__size_type.getCPtr(startIndex), SWIGTYPE_p_OdObjectsAllocatorT_OdDbSubentId_t__size_type.getCPtr(endIndex)), false);
			if (TD_DbPINVOKE.SWIGPendingException.Pending)
			{
				throw TD_DbPINVOKE.SWIGPendingException.Retrieve();
			}
			return result;
		}

		public bool find(OdDbSubentId value, SWIGTYPE_p_OdObjectsAllocatorT_OdDbSubentId_t__size_type findIndex, SWIGTYPE_p_OdObjectsAllocatorT_OdDbSubentId_t__size_type start)
		{
			bool result = TD_DbPINVOKE.OdDbSubentIdArraySt_find__SWIG_0(this.swigCPtr, OdDbSubentId.getCPtr(value), SWIGTYPE_p_OdObjectsAllocatorT_OdDbSubentId_t__size_type.getCPtr(findIndex), SWIGTYPE_p_OdObjectsAllocatorT_OdDbSubentId_t__size_type.getCPtr(start));
			if (TD_DbPINVOKE.SWIGPendingException.Pending)
			{
				throw TD_DbPINVOKE.SWIGPendingException.Retrieve();
			}
			return result;
		}

		public bool find(OdDbSubentId value, SWIGTYPE_p_OdObjectsAllocatorT_OdDbSubentId_t__size_type findIndex)
		{
			bool result = TD_DbPINVOKE.OdDbSubentIdArraySt_find__SWIG_1(this.swigCPtr, OdDbSubentId.getCPtr(value), SWIGTYPE_p_OdObjectsAllocatorT_OdDbSubentId_t__size_type.getCPtr(findIndex));
			if (TD_DbPINVOKE.SWIGPendingException.Pending)
			{
				throw TD_DbPINVOKE.SWIGPendingException.Retrieve();
			}
			return result;
		}

		public OdDbSubentIdArraySt setLogicalLength(SWIGTYPE_p_OdObjectsAllocatorT_OdDbSubentId_t__size_type logLength)
		{
			OdDbSubentIdArraySt result = new OdDbSubentIdArraySt(TD_DbPINVOKE.OdDbSubentIdArraySt_setLogicalLength(this.swigCPtr, SWIGTYPE_p_OdObjectsAllocatorT_OdDbSubentId_t__size_type.getCPtr(logLength)), false);
			if (TD_DbPINVOKE.SWIGPendingException.Pending)
			{
				throw TD_DbPINVOKE.SWIGPendingException.Retrieve();
			}
			return result;
		}

		public OdDbSubentIdArraySt setPhysicalLength(SWIGTYPE_p_OdObjectsAllocatorT_OdDbSubentId_t__size_type physLength)
		{
			OdDbSubentIdArraySt result = new OdDbSubentIdArraySt(TD_DbPINVOKE.OdDbSubentIdArraySt_setPhysicalLength(this.swigCPtr, SWIGTYPE_p_OdObjectsAllocatorT_OdDbSubentId_t__size_type.getCPtr(physLength)), false);
			if (TD_DbPINVOKE.SWIGPendingException.Pending)
			{
				throw TD_DbPINVOKE.SWIGPendingException.Retrieve();
			}
			return result;
		}

		public OdDbSubentIdArraySt reverse()
		{
			OdDbSubentIdArraySt result = new OdDbSubentIdArraySt(TD_DbPINVOKE.OdDbSubentIdArraySt_reverse(this.swigCPtr), false);
			if (TD_DbPINVOKE.SWIGPendingException.Pending)
			{
				throw TD_DbPINVOKE.SWIGPendingException.Retrieve();
			}
			return result;
		}

		public OdDbSubentIdArraySt swap(SWIGTYPE_p_OdObjectsAllocatorT_OdDbSubentId_t__size_type firstIndex, SWIGTYPE_p_OdObjectsAllocatorT_OdDbSubentId_t__size_type secondIndex)
		{
			OdDbSubentIdArraySt result = new OdDbSubentIdArraySt(TD_DbPINVOKE.OdDbSubentIdArraySt_swap(this.swigCPtr, SWIGTYPE_p_OdObjectsAllocatorT_OdDbSubentId_t__size_type.getCPtr(firstIndex), SWIGTYPE_p_OdObjectsAllocatorT_OdDbSubentId_t__size_type.getCPtr(secondIndex)), false);
			if (TD_DbPINVOKE.SWIGPendingException.Pending)
			{
				throw TD_DbPINVOKE.SWIGPendingException.Retrieve();
			}
			return result;
		}

		public bool remove(OdDbSubentId value, SWIGTYPE_p_OdObjectsAllocatorT_OdDbSubentId_t__size_type start)
		{
			bool result = TD_DbPINVOKE.OdDbSubentIdArraySt_remove__SWIG_0(this.swigCPtr, OdDbSubentId.getCPtr(value), SWIGTYPE_p_OdObjectsAllocatorT_OdDbSubentId_t__size_type.getCPtr(start));
			if (TD_DbPINVOKE.SWIGPendingException.Pending)
			{
				throw TD_DbPINVOKE.SWIGPendingException.Retrieve();
			}
			return result;
		}

		public bool remove(OdDbSubentId value)
		{
			bool result = TD_DbPINVOKE.OdDbSubentIdArraySt_remove__SWIG_1(this.swigCPtr, OdDbSubentId.getCPtr(value));
			if (TD_DbPINVOKE.SWIGPendingException.Pending)
			{
				throw TD_DbPINVOKE.SWIGPendingException.Retrieve();
			}
			return result;
		}

		private object locker = new object();

		private HandleRef swigCPtr;

		protected bool swigCMemOwn;
	}
}
